As you point out we rely on extension to detect the file type. MIME type information isn't available for us when we list the files, so we can't really efficiently determine the file type (and display proper file type / icon upfront). We would have to query each S3 key separately which would have horrendous performance impact.
What we could do, upon clicking on the file, instead of displaying "Preview not available", we could silently fetch metadata and based on MIME type we could deduct that's indeed an image or video or something else and then open valid preview.
The issue is that it still wouldn't work with encryption enabled. When we upload files we set MIME type to octet stream to not reveal the file contents.
This makes this feature applicable to existing buckets with unencrypted files without extension.
Can I ask what's your use case having files without extension? (edited)